home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_gnome-python.idb / usr / freeware / lib / python1.5 / site-packages / gnome / applet.py.z / applet.py
Encoding:
Python Source  |  1999-07-16  |  2.5 KB  |  85 lines

  1. import sys
  2.  
  3. if sys.modules.has_key('gtk'):
  4.     raise ImportError, "gnome.applet must be imported before gtk"
  5. del sys
  6.  
  7. import _applet
  8.  
  9. import gnome
  10. init_result = _applet.applet_widget_init(gnome.app_id, gnome.app_version)
  11. gnome.gnome_init_called = 1
  12. gnome.gnomelib_init_called = 1
  13. del gnome
  14. import _gnomeui
  15. _gnomeui._register_types()
  16. del _gnomeui
  17.  
  18. import gtk; _gtk = gtk; del gtk
  19.  
  20. # add our mainloop and mainquit implementations to GTK
  21. def mainloop():
  22.     _applet.applet_widget_gtk_main()
  23. def mainquit(*args):
  24.     _applet.applet_widget_gtk_main_quit()
  25. _gtk.mainloop = mainloop
  26. _gtk.mainquit = mainquit
  27. del mainloop, mainquit
  28.  
  29. _obj2inst = _gtk._obj2inst
  30.  
  31. class AppletWidget(_gtk.GtkPlug):
  32.     def __init__(self, goad_id="", _obj=None):
  33.         if _obj: self._o = _obj; return
  34.         self._o = _applet.applet_widget_new(goad_id)
  35.     def set_tooltip(self, text):
  36.         _applet.applet_widget_set_tooltip(self._o, text)
  37.     def set_widget_tooltip(self, widget, text):
  38.         _applet.applet_widget_set_widget_tooltip(self._o, widget._o,
  39.                              text)
  40.     def add(self, child):
  41.         _applet.applet_widget_add(self._o, child._o)
  42.     def remove(self):
  43.         _applet.applet_widget_remove(self._o)
  44.     def register_callback(self, name, menutext, func, *args):
  45.         _applet.applet_widget_register_callback(self._o, name,
  46.                             menutext, func, args)
  47.     def register_stock_callback(self, name, stock_type, menutext, func,
  48.                     *args):
  49.         _applet.applet_widget_register_stock_callback(self._o, name,
  50.                                   stock_type,
  51.                                   menutext, func,
  52.                                   args)
  53.     def unregister_callback(self, name):
  54.         _applet.applet_widget_unregister_callback(self._o, name)
  55.     def register_callback_dir(self, name, menutext):
  56.         _applet.applet_widget_register_callback_dir(self._o, name,
  57.                                 menutext)
  58.     def register_stock_callback_dir(self, name, stock_type, menutext):
  59.         _applet.applet_widget_register_stock_callback_dir(self._o,
  60.                                   name,
  61.                                   stock_type,
  62.                                   menutext)
  63.     def unregister_callback_dir(self, name):
  64.         _applet.applet_widget_unregister_callback_dir(self._o, name)
  65.     def get_applet_count(self):
  66.         return _applet.applet_widget_get_applet_count()
  67.     def sync_config(self):
  68.         _applet.applet_widget_sync_config(self._o)
  69.     def get_panel_orient(self):
  70.         return _applet.applet_widget_get_panel_orient(self._o)
  71.     def abort_load(self):
  72.         _applet.applet_widget_abort_load(self._o)
  73. _gtk._name2cls['AppletWidget'] = AppletWidget
  74.  
  75. # Panel orientation types ...
  76. ORIENT_UP    = 0
  77. ORIENT_DOWN  = 1
  78. ORIENT_LEFT  = 2
  79. ORIENT_RIGHT = 3
  80.  
  81. # panel back types ...
  82. PANEL_BACK_NONE   = 0
  83. PANEL_BACK_COLOR  = 1
  84. PANEL_BACK_PIXMAP = 2
  85.